package mop.util;

/**
 * Interface for Memento support, generic class
 * @author MOP Team 7
 */
public interface Memento<T>
{
	/**
	 * Save a instance to a memento
	 * @return	A state of the instance
	 */
	 public T saveMemento();
	 
	 /**
	  * Restore the instance to a given memento
	  * @param m	The state of the instance to restore to
	  */
	 public void restoreMemento(T m);
}
